"""
1.1 系统简介
需求：进入系统显示系统功能界面，功能如下：

2 删除学员
3 修改学员信息
4 查询学员信息
5 显示所有学员信息
6 退出系统

系统共有6个功能，用户需求根据自己需求选取

1.2 步骤分析

1 显示功能界面
2 用户输入功能序号
3 根据用户输入的功能序号，执行不同的功能（函数）
    3.1 定义函数
    3.2 调用函数

1.3
1.3.4 定义不同功能的函数
    所有功能函数都是操作学员信息，所有存储所有学员信息应该是一个全局变量，数据类型为列表


1 添加学员
    需求分析
    1 接收用户输入学员信息，并保存
    2 判断是否添加学员信息
        2.1 如果学员姓名已经存在，则报错提示
        2.2 如果学员姓名不存在，则准备空字典，将用户输入的数据追加到字典，再列表追加字典数据
    3 对应的if条件成立的位置调用该函数


2 删除学员
    需求分析
    1 用户输入目标学员
    2 检查这个学员是否存在
        2.1 如果存在，则列表删除这个数据
        2.2 如果不存在，则提示该用户不存在
"""

def info_print():
    print('请选择功能.......')
    print('1 添加学员')
    print('2 删除学员')
    print('3 修改学员信息')
    print('4 查询学员信息')
    print('5 显示所有学员信息')
    print('6 退出系统')
    print('-'*40)


# 等待存储所有学员的信息
info = []
#添加学员信息的函数
def add_info():
    """添加学员函数"""
    # 1 用户输入：学号、姓名、手机号
    new_id = input('请输入学号：')
    new_name = input('请输入姓名：')
    new_tel = input('请输入手机号：')
    # 2 判断是否添加这个学员：如果学员姓名已经存在，报错提示：如果姓名不存在添加数据
    global info
    # 2.1 不允许姓名重复，判断用户输入的姓名和列表中字典的name对应的值 相等 提示
    for i in info:
        if new_name == i['name']:
            print('该用户已经存在')
            # return作用：退出当前函数，后面添加信息的代码不执行
            return

    # 2.2 如果输入的姓名不存在，添加数据：准备空字典，字典新增数据，列表追加字典
    info_dict = {}

    # 字典新增数据
    info_dict['id'] =new_id
    info_dict['name'] = new_name
    info_dict['tel'] = new_tel

    print(info_dict)

    # 列表追加字典
    info.append(info_dict)
    print(info)

def del_info():
    """删除学员"""
    # 1 用户输入要删除的学员的姓名
    del_name = input('请输入要删除学员的姓名：')

    global info
    # 2 判断学员是否存在：如果输入的姓名存在则删除，不存在则报错提示
    for i in info:
        if del_name == i['name']:
            # 删除成功
            info.remove(i)
            print(f'学员{del_name}删除成功')
            break
    else:
        print('该学员不存在')
    print(info)



#系统需要循环使用，知道用户输入6，才退出系统
while True:
    #1 显示功能界面
    info_print()

    #2 用户输入功能序号
    user_num = int(input('请输入功能序号：'))

    # 3 按照用户输入的功能序号，执行不同的功能（函数）
    # 如果用户输入1，执行添加：如果用户输入2，执行删除....--多重判断

    if user_num == 1:
        add_info()
    elif user_num == 2:
        del_info()
    elif user_num == 3:
        print('修改')
    elif user_num == 4:
        print('查询')
    elif user_num == 5:
        print('显示所有学员')
    elif user_num == 6:
        print('退出系统')
        break
    else:
        print('输入的功能序号有误！')


